#ifndef uBarreInc
#define uBarreInc

#include <vcl\Classes.hpp>
#include <vcl\Controls.hpp>
#include <vcl\StdCtrls.hpp>
#include <vcl\Forms.hpp>
#include <vcl\ComCtrls.hpp>
#include <vcl\ExtCtrls.hpp>


class TfrmBarre : public TForm
{
 __published:
    TProgressBar *pb;
    TLabel *lblMsg0;
    TImage *imgMsg0;
    TImage *imgDone;
    TLabel *lblMsgInfo;
 private:


 //***********//
 // Attributs //
 //***********//
 private:
  HWND  m_hwndActive;      // Fenêtre active au moment de la création de la barre
  void* m_pvTaskWindows;   // Fenêtres de la tâche qui sont désactivées pendant la progression
  int   m_nNbMessages;     // Nombre de messages dans la barre de progression
  int   m_nCurrentMessage; // N° du message en cours de progression (0 à m_nNbMessages - 1; -1 = aucun)


 //************//
 // Propriétés //
 //************//
 private:
  void __fastcall SetMessages( const AnsiString& strMessages);

 public:
  __property AnsiString Messages       = { write = SetMessages};
  __property int        NbMessages     = { read = m_nNbMessages};
  __property int        CurrentMessage = { read = m_nCurrentMessage};


 //************//
 // Opérateurs //
 //************//
 public:
  void __fastcall PrepareNextMessage( void);


 //***************************//
 // Constructeurs/destructeur //
 //***************************//
 public:
  __fastcall TfrmBarre( TForm* pfrmOwnerAndParent);
  __fastcall ~TfrmBarre();
}; /* class TfrmBarre */

#endif // #ifndef uBarreInc
